package cn.ajb.filemanager.entity;

import java.util.Date;
import java.util.List;

public class FileManager {
	
	public static final String FILE_TYPE_0 = "folder";
	
	private Integer id;	
	private Integer parentId;
	
	private String fileName;
	
	private Integer fileType;
	
	private String remarks;
	
	private Integer downloadCount;
	
	private String downloadUrl;
	
	private Double fileSize ;
	
	private int isLeaf ;
	
	private Date createDate;
	
	private Date updateDate;
	
	private Integer level;
	
	private String parentStrCn;
	
	private List<FileManager> children ;
	
	private FileManager parent;
	//系统类型
	private String sysType;
	//产品名称
	private String productName;
	//产品类型
	private String productType;
	//特殊单编号
	private String specialNum;
	//产品型号
	private String productModel;
	//上传人员
	private String uploadUser;
	//使用场景
	private String usageScenarios;
	//文档类型
	private String documentType;
	//文档版本
	private String version;
	//物料编号
	private String materiel;
	//二维码的路径
	private Image imagePath;
	public FileManager() {
		
	}
	
	public FileManager(Integer parentId, String fileName, Integer fileType) {
		super();
		this.parentId = parentId;
		this.fileName = fileName;
		this.fileType = fileType;
	}
	
	public FileManager(Integer id) {
		super();
		this.id = id;
	}
	
	public FileManager(Integer id, Integer parentId, String fileName,
			String remarks, Date updateDate, Integer level ,String parentStrCn) {
		super();
		this.id = id;
		this.parentId = parentId;
		this.fileName = fileName;
		this.remarks = remarks;
		this.updateDate = updateDate;
		this.level = level;
		this.parentStrCn = parentStrCn;
	}
	
	public FileManager(Integer id, String fileName, String remarks,String parentStrCn,
			Date updateDate, String sysType, String productName,
			String productType, String specialNum,
			String productModel, String uploadUser, String usageScenarios,
			String documentType, String version,
			String materiel) {
		super();
		this.id = id;
		this.fileName = fileName;
		this.remarks = remarks;
		this.parentStrCn = parentStrCn;
		this.updateDate = updateDate;
		this.sysType = sysType;
		this.productName = productName;
		this.productType = productType;
		this.specialNum = specialNum;
		this.productModel = productModel;
		this.uploadUser = uploadUser;
		this.usageScenarios = usageScenarios;
		this.documentType = documentType;
		this.version = version;
		this.materiel = materiel;
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public Integer getParentId() {
		return parentId;
	}

	public void setParentId(Integer parentId) {
		this.parentId = parentId;
	}

	public String getFileName() {
		return fileName;
	}

	public void setFileName(String fileName) {
		this.fileName = fileName;
	}

	public Integer getFileType() {
		return fileType;
	}

	public void setFileType(Integer fileType) {
		this.fileType = fileType;
	}

	public String getRemarks() {
		return remarks;
	}

	public void setRemarks(String remarks) {
		this.remarks = remarks;
	}

	public Integer getDownloadCount() {
		return downloadCount;
	}

	public void setDownloadCount(Integer downloadCount) {
		this.downloadCount = downloadCount;
	}

	public String getDownloadUrl() {
		return downloadUrl;
	}

	public void setDownloadUrl(String downloadUrl) {
		this.downloadUrl = downloadUrl;
	}

	public Double getFileSize() {
		return fileSize;
	}

	public void setFileSize(Double fileSize) {
		this.fileSize = fileSize;
	}

	public int getIsLeaf() {
		return isLeaf;
	}

	public void setIsLeaf(int isLeaf) {
		this.isLeaf = isLeaf;
	}

	public Date getCreateDate() {
		return createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	public Date getUpdateDate() {
		return updateDate;
	}

	public void setUpdateDate(Date updateDate) {
		this.updateDate = updateDate;
	}
	
	public Integer getLevel() {
		return level;
	}

	public void setLevel(Integer level) {
		this.level = level;
	}

	public String getParentStrCn() {
		return parentStrCn;
	}

	public void setParentStrCn(String parentStrCn) {
		this.parentStrCn = parentStrCn;
	}
	public List<FileManager> getChildren() {
		return children;
	}

	public void setChildren(List<FileManager> children) {
		this.children = children;
	}

	public FileManager getParent() {
		return parent;
	}

	public void setParent(FileManager parent) {
		this.parent = parent;
	}
	public String getSysType() {
		return sysType;
	}

	public void setSysType(String sysType) {
		this.sysType = sysType;
	}

	public String getProductName() {
		return productName;
	}

	public void setProductName(String productName) {
		this.productName = productName;
	}

	public String getProductType() {
		return productType;
	}

	public void setProductType(String productType) {
		this.productType = productType;
	}

	public String getSpecialNum() {
		return specialNum;
	}

	public void setSpecialNum(String specialNum) {
		this.specialNum = specialNum;
	}

	public String getProductModel() {
		return productModel;
	}

	public void setProductModel(String productModel) {
		this.productModel = productModel;
	}

	public String getUploadUser() {
		return uploadUser;
	}

	public void setUploadUser(String uploadUser) {
		this.uploadUser = uploadUser;
	}

	public String getUsageScenarios() {
		return usageScenarios;
	}

	public void setUsageScenarios(String usageScenarios) {
		this.usageScenarios = usageScenarios;
	}

	public String getDocumentType() {
		return documentType;
	}

	public void setDocumentType(String documentType) {
		this.documentType = documentType;
	}

	public String getVersion() {
		return version;
	}

	public void setVersion(String version) {
		this.version = version;
	}

	public String getMateriel() {
		return materiel;
	}

	public void setMateriel(String materiel) {
		this.materiel = materiel;
	}

	public Image getImagePath() {
		return imagePath;
	}

	public void setImagePath(Image imagePath) {
		this.imagePath = imagePath;
	}

	@Override
	public String toString() {
		return "FileManager [id=" + id + ", parentId=" + parentId
				+ ", fileName=" + fileName + ", fileType=" + fileType
				+ ", remarks=" + remarks + ", downloadCount=" + downloadCount
				+ ", downloadUrl=" + downloadUrl + ", fileSize=" + fileSize
				+ ", isLeaf=" + isLeaf + ", createDate=" + createDate
				+ ", updateDate=" + updateDate + ", level=" + level
				+ ", parentStrCn=" + parentStrCn + ", children=" + children
				+ ", parent=" + parent + "]";
	}
	
	
}
